# -*- coding: utf-8 -*-
from CreatCompThreads import creatCompThreads
from DataCleaning import cleanDate
from stopWordDic import test
from CreatFenciThreads import *

test() 
# 先输入读取的种子关键词
num = input('请输入种子关键词数量：')
keyWords = []  # 保存用户输入的种子关键词的列表
for i in range(int(num)):
    keyWords.append(input())
#先判断是否存在搜索记录文件，如果有搜索文件
if os.path.isfile(searchRecordspath):
    #打开搜索文件，设为只读
    searchRecordFile = open(searchRecordspath, 'r', encoding="utf-8")
    tempSearchRecords = searchRecordFile.readlines()
    searchRecords = ''.join(tempSearchRecords).strip('\n')
    for i in range(int(num)):
        if keyWords[i-1] in searchRecords:
            print("该种子关键字---" + keyWords[i-1] + "---多次搜索，已经保存过，请去搜索记录查看")
            ####这里可能有问题
            keyWords.remove(keyWords[i-1])
#如果没有就创建
else:
    # 创建搜索记录文件
    searchRecordFile = open(searchRecordspath, 'w', encoding="utf-8")
    for i in range(int(num)):
        searchRecordFile.write(keyWords[i-1]+"\n")
    searchRecordFile.close()
flag = input("请输入选择哪种分词工具，1为jieba，2为pkuseg，3为thulac，其他为jieba：")

#进行数据清洗
if os.path.isfile(cleaned_filepath):
    print("数据已经清洗过，直接进入下一步")
else:
    cleanDate()
#开启多线程进行各种分词，中介词等处理
creatFenciThreads(flag, keyWords)

#通过用户输入中介关键字来进行竞争关键字求取
# 先输入读取的种子关键词
midkeynum = input('请输入中介关键字来进行运算的数量（数字越大越为精准，但时间开销越大）：')

#开启多线程对竞争关键字进行求取计算
creatCompThreads(flag, keyWords, midkeynum)
#测试时看长度的
#print(len(results1))


'''
for i, (k, v) in enumerate(dic.items()):
    if i in range(0, 10):
        print(k, v)
'''
#print(list(dict(sorted(dic.items(),key=lambda x:x[1],reverse=True)).items())[:10]) 
 
